﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////


#pragma once
#include <stdint.h>
#include <xtr1common>
#include "NdbDataSchema.h"

namespace gcmp
{
    /// \brief 图形节点的可见性
    SERIALIZABLE_ENUM_CLASS(GraphicsNodeVisibility)
    {
        Always = 0,                                     ///<  总是可见
        Never = 1,                                      ///<  总是不可见
        HighlightedExactly = 2,                         ///<  节点确切被pick到（父节被pick到不算），且是Highlighted状态，才可见
        HighlightedExactly_Or_SelectedExactly = 3,      ///<  节点确切被pick到（父节被pick到不算），且是Highlighted或selected状态，才可见
        //TODO-XY：命名
        HighlightedExactly_Or_SelectedExactly_Or_RootGRepHighlightedOrSelected = 4, ///<  节点确切被pick到（父节被pick到不算），或Element整体被pick到，且是Highlighted或selected状态，才可见
        NeverHighlighted_Or_Selected = 5,                ///<  永不(预)高亮
        NeverHighlighted = 6,                            ///<  永不预高亮,可点击高亮
        HighlightedExactly_Or_SelectedExactly_Or_RootGRepHighlighted = 7, ///<  节点确切被pick到（父节被pick到不算），或Element整体被pick到，且是Highlighted状态，才可见
    };
}
